
/**   
 * @Title: MenusController.java 
 * @Package: com.aft.cdcb.modules.admin.controller 
 * @Description: TODO
 * @author Mandarava  
 * @date 2016年8月25日 下午7:41:51 
 * @version 1.3.1 
 * @Email wuyan1688@qq.com
 */

package com.infoland.modules.main.controller;

import java.util.List;

import org.apache.shiro.authz.annotation.Logical;
import org.apache.shiro.authz.annotation.RequiresRoles;

import com.infoland.modules.basic.BaseController;
import com.infoland.modules.basic.Message;
import com.infoland.modules.main.model.Menu;
import com.infoland.modules.main.service.SystemService;

/**
 * 菜单管理
 * 
 * @author Mandarava
 * @date 2016年8月25日 下午7:41:51
 * @version V1.3.1
 */
@RequiresRoles(value = { "ADMIN_ROLE", "SYS_ROLE" }, logical = Logical.OR)
public class MenuController extends BaseController<Menu> {

	/**
	 * 菜单列表
	 * 
	 * @author Mandarava
	 */
	public void menusList() {
		List<Menu> list = SystemService.service.finAllMenus();
		renderJson(list);
	}

	/**
	 * 新增菜单
	 * 
	 * @author Mandarava
	 */
	public void saveMenu() {
		Menu Menu = getJSONModel(Menu.class);
		Message message = SystemService.service.saveMenu(Menu);
		renderJson(message);
	}

	/**
	 * 编辑菜单，根据ID查询菜单信息
	 * 
	 * @author Mandarava
	 */
	public void findOne() {
		Integer id = getJSONParaToInt("id");
		Menu Menu = SystemService.service.findOneMenu(id);
		renderJson(Menu);
	}

	/**
	 * 修改菜单
	 * 
	 * @author Mandarava
	 */

	public void updateMenu() {
		Menu Menu = getJSONModel(Menu.class);
		Message message = SystemService.service.updateMenu(Menu);
		renderJson(message);
	}

	/**
	 * 删除菜单
	 * 
	 * @author Mandarava
	 */

	public void deleteMenu() {
		Integer id = getJSONParaToInt("id");
		Message message = SystemService.service.deleteMenu(id);
		renderJson(message);
	}

	/**
	 * 根据角色id获得所有的菜单
	 * 
	 * @author fast_ly
	 * @time:2016年8月30日 下午5:19:16
	 */
	public void menusRoleList() {
		renderJson(SystemService.service.menusRoleList(getJSONParaToLong("roleId")));
	}
	
	/**
	 * 查询出所有菜单
	 * @author lixp
	 * @time:2017年7月11日 下午5:13:30
	 */
	public void findMenus(){
		renderJson(SystemService.service.findMens());
	}
	/**
	 * 查询所有图标
	 * @author lixp
	 * @time:2017年7月12日 下午3:58:30
	 */
	public void icon() {
		renderJson(SystemService.service.findIcon());
	}
}
